﻿/*
 Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
 For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
*/
var SF = (function () {
  function d(a) {
    return (a = a.attributes ? a.attributes.getNamedItem('class') : null)
      ? a.value.split(' ')
      : [];
  }
  function c(a) {
    var e = document.createAttribute('class');
    e.value = a.join(' ');
    return e;
  }
  var b = {
    attachListener: function (a, e, b) {
      if (a.addEventListener) a.addEventListener(e, b, !1);
      else if (a.attachEvent)
        a.attachEvent('on' + e, function () {
          b.apply(a, arguments);
        });
      else throw Error('Could not attach event.');
    },
  };
  b.indexOf = (function () {
    var a = Array.prototype.indexOf;
    return 'function' === a
      ? function (e, b) {
          return a.call(e, b);
        }
      : function (a, b) {
          for (var c = a.length, d = 0; d < c; d++) if (a[d] === b) return d;
          return -1;
        };
  })();
  b.accept = function (a, e) {
    var c;
    a.children
      ? ((c = a.children), e(a))
      : 'number' === typeof a.length && (c = a);
    for (var d = c ? c.length || 0 : 0; d--; ) b.accept(c[d], e);
  };
  b.getByClass = (function () {
    var a = document.getElementsByClassName;
    return 'function' === typeof a
      ? function (e, b) {
          'string' === typeof e && ((b = e), (e = document));
          return a.call(e, b);
        }
      : function (a, c) {
          'string' === typeof a &&
            ((c = a), (a = document.getElementsByTagName('html')[0]));
          var d = [];
          b.accept(a, function (a) {
            b.classList.contains(a, c) && d.push(a);
          });
          return d;
        };
  })();
  b.classList = {};
  b.classList.add = function (a, b) {
    var f = d(a);
    f.push(b);
    a.attributes.setNamedItem(c(f));
  };
  b.classList.remove = function (a, e) {
    var f = d(a, e),
      n = b.indexOf(f, e);
    -1 !== n && (f.splice(n, 1), a.attributes.setNamedItem(c(f)));
  };
  b.classList.contains = function (a, c) {
    return -1 !== b.indexOf(d(a), c);
  };
  b.classList.toggle = function (a, b) {
    this.contains(a, b) ? this.remove(a, b) : this.add(a, b);
  };
  return b;
})();
('use strict');
(function () {
  function d(c) {
    for (var b in c) delete c[b];
  }
  SF.modal = function (c) {
    function b(a) {
      27 == a.keyCode && f.close();
    }
    c.modalClass = 'modal content';
    c.closeClass = 'modal-close';
    c.modalStyles = d;
    c.closeStyles = d;
    var a = c.afterCreate,
      e = c.afterClose;
    c.afterCreate = function (c) {
      a && a(c);
      window.addEventListener('keydown', b);
    };
    c.afterClose = function (a) {
      e && e(a);
      window.removeEventListener('keydown', b);
    };
    var f = new picoModal(c)
      .afterCreate(c.afterCreate)
      .afterClose(c.afterClose);
    return f;
  };
})();
('use strict');
(function () {
  for (var d = SF.getByClass('toggler'), c = d.length; c--; )
    SF.attachListener(d[c], 'click', function () {
      var b =
          SF.classList.contains(this, 'icon-toggler-expanded') ||
          SF.classList.contains(this, 'icon-toggler-collapsed'),
        a = document.getElementById(this.getAttribute('data-for'));
      SF.classList.toggle(this, 'collapsed');
      SF.classList.contains(this, 'collapsed')
        ? (SF.classList.add(a, 'collapsed'),
          b &&
            (SF.classList.remove(this, 'icon-toggler-expanded'),
            SF.classList.add(this, 'icon-toggler-collapsed')))
        : (SF.classList.remove(a, 'collapsed'),
          b &&
            (SF.classList.remove(this, 'icon-toggler-collapsed'),
            SF.classList.add(this, 'icon-toggler-expanded')));
    });
})();
('use strict');
(function () {
  for (var d = SF.getByClass('tree-a'), c = d.length; c--; )
    SF.attachListener(d[c], 'click', function (b) {
      b = b.target || b.srcElement;
      'H2' !== b.nodeName ||
        SF.classList.contains(b, 'tree-a-no-sub') ||
        SF.classList.toggle(b, 'tree-a-active');
    });
})();
(function (d, c) {
  function b(a) {
    return 'object' === typeof Node
      ? a instanceof Node
      : a && 'object' === typeof a && 'number' === typeof a.nodeType;
  }
  function a() {
    var a = [];
    return {
      watch: a.push.bind(a),
      trigger: function (b) {
        for (
          var c = !0,
            d = {
              preventDefault: function () {
                c = !1;
              },
            },
            e = 0;
          e < a.length;
          e++
        )
          a[e](b, d);
        return c;
      },
    };
  }
  function e(a) {
    this.elem = a;
  }
  function f(a, b) {
    return e
      .div()
      .clazz('pico-overlay')
      .clazz(a('overlayClass', ''))
      .stylize({
        display: 'block',
        position: 'fixed',
        top: '0px',
        left: '0px',
        height: '100%',
        width: '100%',
        zIndex: 1e4,
      })
      .stylize(a('overlayStyles', { opacity: 0.5, background: '#000' }))
      .onClick(function () {
        a('overlayClose', !0) && b();
      });
  }
  function n(a, b) {
    var c = a('width', 'auto');
    'number' === typeof c && (c = '' + c + 'px');
    return e
      .div()
      .clazz('pico-content')
      .clazz(a('modalClass', ''))
      .stylize({
        display: 'block',
        position: 'fixed',
        zIndex: 10001,
        left: '50%',
        top: '50px',
        width: c,
        '-ms-transform': 'translateX(-50%)',
        '-moz-transform': 'translateX(-50%)',
        '-webkit-transform': 'translateX(-50%)',
        '-o-transform': 'translateX(-50%)',
        transform: 'translateX(-50%)',
      })
      .stylize(
        a('modalStyles', {
          backgroundColor: 'white',
          padding: '20px',
          borderRadius: '5px',
        })
      )
      .html(a('content'))
      .attr('role', 'dialog')
      .onClick(function (a) {
        new e(a.target).anyAncestor(function (a) {
          return /\bpico-close\b/.test(a.elem.className);
        }) && b();
      });
  }
  function p(a) {
    return function () {
      return a().elem;
    };
  }
  function k(c) {
    function e(a, b) {
      var d = c[a];
      'function' === typeof d && (d = d(b));
      return void 0 === d ? b : d;
    }
    function k() {
      l().hide();
      m().hide();
      v.trigger(h);
    }
    function q() {
      w.trigger(h) && k();
    }
    function g(a) {
      return function () {
        a.apply(this, arguments);
        return h;
      };
    }
    function r(a) {
      if (!t) {
        var c = n(e, q),
          b = f(e, q),
          d;
        d = e('closeButton', !0)
          ? c
              .child()
              .html(e('closeHtml', '\x26#xD7;'))
              .clazz('pico-close')
              .clazz(e('closeClass'))
              .stylize(
                e('closeStyles', {
                  borderRadius: '2px',
                  cursor: 'pointer',
                  height: '15px',
                  width: '15px',
                  position: 'absolute',
                  top: '5px',
                  right: '5px',
                  fontSize: '16px',
                  textAlign: 'center',
                  lineHeight: '15px',
                  background: '#CCC',
                })
              )
          : void 0;
        t = { modal: c, overlay: b, close: d };
        x.trigger(h);
      }
      return t[a];
    }
    if ('string' === typeof c || b(c)) c = { content: c };
    var x = a(),
      y = a(),
      z = a(),
      w = a(),
      v = a(),
      t,
      m = r.bind(d, 'modal'),
      l = r.bind(d, 'overlay'),
      u = r.bind(d, 'close'),
      h = {
        modalElem: p(m),
        closeElem: p(u),
        overlayElem: p(l),
        show: function () {
          y.trigger(h) && (l().show(), u(), m().show(), z.trigger(h));
          return this;
        },
        close: g(q),
        forceClose: g(k),
        destroy: function () {
          m = m().destroy();
          l = l().destroy();
          u = void 0;
        },
        options: function (a) {
          c = a;
        },
        afterCreate: g(x.watch),
        beforeShow: g(y.watch),
        afterShow: g(z.watch),
        beforeClose: g(w.watch),
        afterClose: g(v.watch),
      };
    return h;
  }
  e.div = function (a) {
    var b = c.createElement('div');
    (a || c.body).appendChild(b);
    return new e(b);
  };
  e.prototype = {
    child: function () {
      return e.div(this.elem);
    },
    stylize: function (a) {
      a = a || {};
      'undefined' !== typeof a.opacity &&
        (a.filter = 'alpha(opacity\x3d' + 100 * a.opacity + ')');
      for (var b in a) a.hasOwnProperty(b) && (this.elem.style[b] = a[b]);
      return this;
    },
    clazz: function (a) {
      this.elem.className += ' ' + a;
      return this;
    },
    html: function (a) {
      b(a) ? this.elem.appendChild(a) : (this.elem.innerHTML = a);
      return this;
    },
    onClick: function (a) {
      this.elem.addEventListener('click', a);
      return this;
    },
    destroy: function () {
      c.body.removeChild(this.elem);
    },
    hide: function () {
      this.elem.style.display = 'none';
    },
    show: function () {
      this.elem.style.display = 'block';
    },
    attr: function (a, b) {
      this.elem.setAttribute(a, b);
      return this;
    },
    anyAncestor: function (a) {
      for (var b = this.elem; b; ) {
        if (a(new e(b))) return !0;
        b = b.parentNode;
      }
      return !1;
    },
  };
  'function' === typeof d.define && d.define.amd
    ? d.define(function () {
        return k;
      })
    : (d.picoModal = k);
})(window, document);
